1. Field of the Invention
The present invention relates to an image processing apparatus that stores combinations of a plurality of functions using script data and executes functions in accordance with the script data, and to a control method of the apparatus.
2. Description of the Related Art
Heretofore, there are methods that restrict the functions of a multifunctional peripheral which a user is able to use with a physical key such as a management key or a card. There are also methods that restrict functions which can be used on the basis of user authentication. The methods of user authentication are also diverse, and include authentication using a card such as an IC card, and authentication performed by a server connected to the multifunctional peripheral via a network. Further, given the conventional difficulties involved in adding or deleting functions, it has been possible to restrict use of the functions of a multifunctional peripheral (functional restrictions) by presetting only the functions that the user is able to use.
However, in recent years, adding and deleting the functions of a multifunctional peripheral has become easy, and is now performed not only by servicepersons but by users and multifunctional peripheral administrators. Not only the functions of a multifunctional peripheral, but also it has become possible to add and delete the authentication function of multifunctional peripherals, making it possible to apply an authentication function that meets user needs to a multifunctional peripheral.
Japanese Patent Laid-Open No. 2002-152446 discloses a technique relating to use restrictions on users using the functions of a device such as a multifunctional peripheral. This technique involves storing menu display data for each user together with identification information on the user, and displaying only those functions included in menu display data matching the identification information of a user when the user has been authenticated. The functions that the user is able to use are thereby restricted.
A technique such as this is also effective in a case that a multifunctional peripheral is provided with a function of executing script data. The definition of script data will be clarified here. The script data stores how the functions of a device such as a multifunctional peripheral are combined. Here, there are assumed to be one or more functions for combining. The script data may be configured to call the functions of a device other than a multifunctional peripheral. The script data may also be configured to store data instructing that functions be executed in parallel or that functions be executed sequentially. Further, a function that executes script data means a function that calls and executes functions in the manner stored in the script data.
Conventionally, a check was made as to whether script data included any functions restricted by functional restrictions, and the script data was not called depending on the result, as aforementioned. However, there are cases where a function that can be implemented by combining a plurality of functions cannot be inhibited despite coinciding with a function that was originally supposed to be restricted by functional restrictions, because of the script data containing a plurality of functions. For example, in a case that “save to box” is combined with “print” and “document delete”, an original is read, saved to a box and printed, after which the saved document is deleted, thus resulting in the same operation as the copy operation being executed, even though it was intended to inhibit the copy operation. There are also cases in which a function that can be implemented by combining a plurality of functions is restricted despite not coinciding with a function that was originally supposed to be restricted by functional restrictions. For example, inhibiting “save to box” results in the copy operation that involves temporality storing images in a box also being inhibited, even though the intention was only to inhibit the saving of documents to a box (“save to box”).